日韩成人一级片_97视频网站_亚洲影院在线_国产精品特级毛片一区二区三区_少妇被粗大的猛烈进出va视频_天天综合影院_性爱视频在线免费_日本中文一二区有码在线_国产成人精选在线观看不卡_狠狠鲁狠狠干

聯(lián)
咨詢熱線:

17661095540

聯(lián)系QQ:

2863379292

官方微信:

大拿分享:去哪兒網(wǎng)https改造分享

主機域名

導讀:https大大改善了網(wǎng)站的安全性,減少了流量劫持,越安全的網(wǎng)站對用戶越有益。即便是https改造有些難度,也應當大力推進https的改造。下面我們特邀了去哪網(wǎng)的同學進行了關于https改

發(fā)表日期:2019-03-19

文章編輯:興田科技

瀏覽次數(shù):10997

標簽:

https大大改善了網(wǎng)站的安全性,減少了流量劫持,越安全的網(wǎng)站對用戶越有益。即便是https改造有些難度,也應當大力推進https的改造。下面我們特邀了去哪網(wǎng)的同學進行了關于https改造的分享!

本文作者:去哪兒高級工程師歐陽何順、去哪兒網(wǎng)SEO負責人 呂令建

一、理解HTTpS

先不聊HTTp和HTTpS的區(qū)別,從聊天軟件說起,假設我們要實現(xiàn)A能發(fā)一個hello消息給B,如果我們要實現(xiàn)這個聊天軟件,只考慮安全性問題,要實現(xiàn)A發(fā)給B的hello消息包,即使被中間人攔截到了,也無法得知消息的內容。

大拿分享:去哪兒網(wǎng)https改造分享 做網(wǎng)站哪里好

那么,如何做到真正的安全呢?目標是A與B通信的內容,有且只有A和B有能力看到通信的真正內容,為了防止內容被第三方竊取,發(fā)送方可以通過密鑰S對聊天內容進行加密,接收方在收到聊天內容之后,再用密鑰S解密聊天內容,只要密鑰不公開給第三者,同時密鑰S足夠安全,我們就可以保證只有A與B知道聊天內容。

大拿分享:去哪兒網(wǎng)https改造分享 做網(wǎng)站哪里好

二、HTTpS的優(yōu)缺點

優(yōu)點

SEO方面:谷歌曾在2014年8月份調整搜索引擎算法,并稱“比起同等HTTp網(wǎng)站,采用HTTpS加密的網(wǎng)站在搜索結果中的排名將會更高”。

安全性:盡管HTTpS并非絕對安全,掌握根證書的機構、掌握加密算法的組織同樣可以進行中間人形式的攻擊,但HTTpS仍是現(xiàn)行架構下最安全的解決方案,主要有以下幾個好處:

使用HTTpS協(xié)議可認證用戶和服務器,確保數(shù)據(jù)發(fā)送到正確的客戶機和服務器;

HTTpS協(xié)議是由SSL+HTTp協(xié)議構建的可進行加密傳輸、身份認證的網(wǎng)絡協(xié)議,要比http協(xié)議安全,可防止數(shù)據(jù)在傳輸過程中不被竊取、改變,確保數(shù)據(jù)的完整性;

HTTpS是現(xiàn)行架構下最安全的解決方案,雖然不是絕對安全,但它大幅增加了中間人攻擊的成本。

缺點

SEO方面:據(jù)ACM CoNEXT數(shù)據(jù)顯示,使用HTTpS協(xié)議會使頁面的加載時間延長近50%,增加10%到20%的耗電,此外,HTTpS協(xié)議還會影響緩存,增加數(shù)據(jù)開銷和功耗,甚至已有安全措施也會受到影響也會因此而受到影響。

經(jīng)濟方面:SSL證書需要錢,功能越強大的證書費用越高,個人網(wǎng)站、小網(wǎng)站沒有必要一般不會用;

HTTpS連接緩存不如HTTp高效,大流量網(wǎng)站如非必要也不會采用,流量成本太高;

HTTpS連接服務器端資源占用高很多,支持訪客稍多的網(wǎng)站需要投入更大的成本,如果全部采用HTTpS,基于大部分計算資源閑置的假設的VpS的平均成本會上去;

HTTpS協(xié)議握手階段比較費時,對網(wǎng)站的相應速度有負面影響,如非必要,沒有理由犧牲用戶體驗。

三、支持HTTpS的方式

增加HTTpS的支持需要在nginx或者tomcat上增加證書(證書需要ops來購買),兩種方法只需要選用其中一種。我們選擇了通過nginx配置證書的方式來做HTTpS支持的事情。原因是這種方式可以通過ops統(tǒng)一配置證書,不需要在每臺服務器上依次配置HTTpS證書,能提升配置效率。

通過tomcat配置證書

在開發(fā)環(huán)境里時,需要自己來生成證書:1、生成證書;2、找到java的目錄;3、生成一個證書。

keytool -v-genkey -alias tomcat -keyalg RSA -keystore ~/keystore

記住生成證書時的密碼

在tomcat的conf/server.xml 配置里增加connector

譬如,我的是server.xml

<Connector port="8443"

maxThreads="150" minSpareThreads="25" maxSpareThreads="75"

enableLookups="true" disableUploadTimeout="true"

acceptCount="100" debug="0" scheme="https" secure="true"

clientAuth="false" sslprotocol="TLS"

keystorepass="121212"---- 這個是您當時的密碼

SSLEnabled="true"

keystoreFile="/home/q/keystore" -- 這個您第二步時,生成證書的地址

/>

使用這種方法,直接用request.getSchmeme()能夠看到https

通過nginx配置證書

在已經(jīng)購買好證書的前提下,可以通過以下方式配置證書。

nginx配置

server {

listen 443;

server_name dujia.qunar.com;

charset utf8;

gzip off;

ssl on;

ssl_certificate/home/q/nginx/ssl/server.crt;

ssl_certificate_key/home/q/nginx/ssl/server.key;

if ( $request_method !~ GET|pOST|HEAD ) {

return 403;

}

proxy_set_header Host "dujia.qunar.com";

proxy_set_header X-Real-Ip$remote_addr;

proxy_set_header X-Forwarded-For$proxy_add_x_forwarded_for;

proxy_set_header dj-sch "https";

proxy_set_header X-Real-Scheme $scheme;

location / {

proxy_pass http://127.0.0.1:80;

#proxy_pass http://p.tuan.qunar.com;

}

}

在java中通過X-Real-Scheme或dj-sch獲取當前協(xié)議

SchemeUtil.java

private static String HTTpS_HEADER = "X-Real-Scheme";

private static String HTTpS_SCHEME = "https";

private static String HTTp_SCHEME = "http";

public static String getScheme(HttpServletRequest request){

String scheme = request.getHeader(HTTpS_HEADER);

if(scheme != null &&scheme.equals(HTTpS_SCHEME)){

return HTTpS_SCHEME;

}else {

return HTTp_SCHEME;

}

}

四、代碼涉及的改動

頁面請求的靜態(tài)資源

js && css

后臺將jsp中域名為http://*.quanrzz.com的js,css鏈接改為 //*.qunarzz.com

圖片

將jsp和java工程中給出的圖片url進行修改(原因是當前實用的圖片服務器不能同時支持http和https),圖片的http和https域名對應關系如下:

大拿分享:去哪兒網(wǎng)https改造分享 做網(wǎng)站哪里好

接口

內部接口:修改接口返回的url,統(tǒng)一格式為://xxx.xx.xx/;

圖片url會根據(jù)服務請求端的協(xié)議做自適應,比如:用戶以https協(xié)議請求服務,接口返回的圖片url對應的協(xié)議也是https。圖片url不以“//xxx.xx.xx/”形式返回的原因是android和ios默認不支持展示不帶協(xié)議的圖片。

外部接口:當調用其他業(yè)務線的一些接口不支持https時,我們的處理方式是通過代理接口來調用這些外部接口。

五、遇到的問題及處理方案

nginx上對443端口的請求在header里添加https標記,需要和后端保證一致;

用戶中心個別的css和js在https環(huán)境下需要在引入時標記css/js=ssl;

同一個域名下面,部分內部調用的接口,是不需要支持https的,因此在做nginx轉發(fā)的時候,需要針對這些uri做特殊處理。

相關推薦

更多新聞

  • 8-24

    2023

    主機域名 / 2023-08-24

    亳州網(wǎng)站優(yōu)化- 提升您的在線業(yè)務

    通過亳州網(wǎng)站優(yōu)化,您的網(wǎng)站將能夠吸引更多的目標用戶并增加曝光度。當您的網(wǎng)站在搜索引擎中的排名提升時,您將獲得更多的有機搜索流量。有機流量是指通過搜索引擎直接訪問您的網(wǎng)站的用戶,這些用戶對您的產(chǎn)品或服務有較高的興趣。有機流量更有可能轉化為潛在客戶和實際銷售,并為您的業(yè)務帶來更高的回報。

    View details

  • 8-25

    2023

    主機域名 / 2023-08-25

    保山網(wǎng)站優(yōu)化的重要性

    保山網(wǎng)站優(yōu)化不僅關注搜索引擎,還關注用戶體驗。優(yōu)化網(wǎng)站結構、提升網(wǎng)站速度、改善頁面設計等,都可以提升用戶在您網(wǎng)站上的體驗。良好的用戶體驗將使用戶更愿意停留在您的網(wǎng)站上,提高轉化率和重復訪問率。

    View details

  • 8-28

    2023

    主機域名 / 2023-08-28

    咸寧網(wǎng)站建設 - 實現(xiàn)網(wǎng)絡化經(jīng)營的關鍵

    咸寧網(wǎng)站建設對于企業(yè)來說是實現(xiàn)網(wǎng)絡化經(jīng)營的關鍵。通過正確的網(wǎng)站建設策略,企業(yè)可以吸引更多的目標客戶,并增強市場競爭力。確保明確網(wǎng)站目標、了解目標受眾的需求、設計優(yōu)秀的界面和內容優(yōu)化,都是建設一個成功的咸寧網(wǎng)站的重要步驟。選擇一個合適的咸寧網(wǎng)站建設公司,并定期更新網(wǎng)站內容,也是保持網(wǎng)站的活躍和搜索引擎排名的關鍵。通過咸寧網(wǎng)站建設,企業(yè)將為自己打開更廣闊的網(wǎng)絡經(jīng)營前景。

    View details

  • 8-28

    2023

    主機域名 / 2023-08-28

    啟東網(wǎng)站優(yōu)化:為您的在線業(yè)務邁向成功之路

    通過優(yōu)化您的網(wǎng)站,您可以提高其在搜索引擎結果頁面(SERP)中的排名。當潛在客戶在搜索引擎上搜索與您業(yè)務相關的關鍵詞時,您的網(wǎng)站將有更高的可能性出現(xiàn)在前幾頁,使您的網(wǎng)站更易被用戶發(fā)現(xiàn)。

    View details

主站蜘蛛池模板: 萨嘎县| 介休市| 彝良县| 彩票| 鹤壁市| 玛多县| 咸阳市| 化隆| 资兴市| 成武县| 永仁县| 河东区| 新绛县| 秀山| 西乌珠穆沁旗| 黑山县| 阿鲁科尔沁旗| 恩施市| 蕲春县| 鹿邑县| 潞西市| 铜山县| 安远县| 孟津县| 循化| 红原县| 南皮县| 商南县| 麦盖提县| 宾阳县| 昭苏县| 长泰县| 吉木萨尔县| 宜昌市| 和静县| 榆中县| 句容市| 泗阳县| 新乐市| 东港市| 宿迁市|